device tree

Listen, a tree is growing

dts 介绍

内核应当与硬件独立,内核中的代码应尽可能少地出现与硬件相关的各种配置。因此,我们需要将硬件相关内容单独提取出来作为抽象,从而减少内核与硬件的耦合,由此诞生了linux设备树,使用dts文件对linux硬件相关内容进行描述。

dts 语法

内存节点

1
2
3
4
5
6
7
8
9
10
11
camera@900000000 {
compatible = "camera"; // 名称,不用管
no-map; // 不进行映射
reg = <0x09 0x00000000 0x0 0x10000000>
/*
* 0x09: 内存起始的高32位
* 0x00000000: 内存起始的低32位
* 0x0: 内存size的高32位
* 0x10000000: 内存size的低32位
*/
}

dts 命令

  • dts转dtb
1
dtc -I dts -O dtb -o 0045.dtb 0045.dts
  • dtb转dts
1
dtc -I dtb -O dts -o 0045.dts 0045.dtb

参考文献

0%